package com.qf.shop.controller;


import com.qf.shop.entity.User;
import com.qf.shop.service.AdminService;
import com.qf.shop.service.impl.AdminServiceImpl;

import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.sql.SQLException;

/**
 * 管理员控制器
 * @author 千锋健哥
 */
@WebServlet("/admin")
public class AdminController extends BaseServlet{

    /**
     * 管理员登录
     * @param request
     * @param response
     * @return
     */
    public String login(HttpServletRequest request, HttpServletResponse response) throws SQLException {

        //1. 获取参数
        String username = request.getParameter("username");
        String password = request.getParameter("password");

        //2. 判断用户名密码不为空, 如果为空跳转到登录页面
        if (username == null || password == null){
            return "redirect:" + request.getContextPath() +"/admin/login.jsp";
        }

        //3. 调用service校验用户名密码
        AdminService adminService = new AdminServiceImpl();
        User user = adminService.login(username, password);

        //4. 根据结果判断进行重定向操作
        if (user != null) {
            //5. 将登录成功后的用户对象放入tomcat的session会话中一直携带
            request.getSession().setAttribute("admin", user);
            //跳转到管理员首页
            return "redirect:" + request.getContextPath() + "/admin/admin.jsp";
        } else {
            //用户名, 密码不正确, 跳转到登录页面重新登录
            return "redirect:" + request.getContextPath() +"/admin/login.jsp";
        }
    }
}
